/**************** 等待页面加载动画JS End **************/
/** 注册全局过滤器 */
// 头像过滤(若无头像显示默认头像)
Vue.filter('headImg', function (value) {
    return value || '/static/images/customer/if_unknown_head.svg';
});
// 格式化金额
Vue.filter('formatDecimal', function (value) {
    return value ? value.toFixed(2) : '0.00';
});
// 格式化日期和时间
Vue.filter('formatFullDate', function (value) {
    return value ? new Date(value).format('yyyy-MM-dd HH:mm:ss') : value;
});
// 格式化日期和时间
Vue.filter('formatDate', function (value) {
    return value ? new Date(value).format('yyyy-MM-dd HH:mm') : value;
});
/**
 * JSON对象序列化为表单对象
 * @param params 序列化的对象
 * @returns {string} 返回表单参数
 */
Vue.prototype.paramsSerializer = function (params) {
    var array = [];
    for (var key in params) {
        array.push('&');
        array.push(key);
        array.push('=');
        array.push(params[key]);
    }
    return array.join('').substring(1);
};

/**
 * 计算滚动区域高度
 * @param topSelector 滚动区域起始位置dom选择器
 * @param bottomSelector 滚动区域结束位置dom选择器
 * @returns {number} 返回滚动区域高度
 */
Vue.prototype.calcScrollHeight = function (topSelector, bottomSelector) {
    var clientHeight = window.innerHeight && document.documentElement.clientHeight ?
        Math.min(window.innerHeight, document.documentElement.clientHeight) :
        window.innerHeight ||
        document.documentElement.clientHeight ||
        document.getElementsByTagName('body')[0].clientHeight;

    var bottom = document.querySelector(bottomSelector || '.fixed-bottom');
    var top = document.querySelector(topSelector);
    var scrollHeight = bottom && bottom.getBoundingClientRect().top || clientHeight;
    scrollHeight -= top && top.getBoundingClientRect().top || 0;
    scrollHeight -= 5; // 留5像素空余
    return scrollHeight;
};
